package com.xiaotao.service;

import com.xiaotao.entity.TeamPost;
import com.xiaotao.dto.TeamPostDTO;
import java.util.List;

public interface TeamPostService {
    TeamPost createPost(Integer userId, TeamPostDTO postDTO);
    TeamPost getPostById(Long id);
    List<TeamPost> getPosts(int page, int size);
    List<TeamPost> getPostsByCategory(String category);
    List<TeamPost> getUserPosts(Integer userId);
    TeamPost updatePost(Long postId, Integer userId, TeamPostDTO postDTO);
    boolean deletePost(Long postId, Integer userId);

    boolean likePost(Integer userId, Long postId);
    boolean unlikePost(Integer userId, Long postId);
    boolean checkLikeStatus(Integer userId, Long postId);
    List<TeamPost> getUserLikedPosts(Integer userId);

    List<TeamPost> getRecommendedPosts(Integer userId);
    void calculateRecommendScores();
}